package server

import (
	"blog/app/model"
	"blog/app/entity"
)

type TagServer struct {
}


var TAGS []model.Tag

func (*TagServer) Get() []model.Tag{
	t := &model.Tag{}
	if len(TAGS) == 0 {
		tags := t.GetAll()
		TAGS = tags
	}
	return TAGS
}

func (*TagServer) GetTagStat() []entity.TagStat{
	t := &model.Tag{}
	return t.GetTagStat()
}

func (*TagServer) Insert(name string) bool{
	t := &model.Tag{}
	ok := t.Insert(name)
	if ok{
		TAGS = []model.Tag{}
	}
	return ok
}

func (*TagServer) Update(id uint64,name string) bool{
	t := &model.Tag{
		ID:id,
		Name:name,
	}
	ok := t.UpdateOne()
	if ok{
		TAGS = []model.Tag{}
	}
	return ok
}

func (*TagServer) Delete(id uint64) bool{
	t := &model.Tag{
		ID:id,
	}
	ok := t.DeleteOne()
	if ok{
		TAGS = []model.Tag{}
	}
	return ok
}